// 暴力

#include <bits/stdc++.h>
using namespace std;

int main() {

  string s;
  cin >> s;

  int n = s.size();
  int ans = 0;

  for (int i = 1; i < n; i++) {
    // 枚举 s[i-1] | s[i] 表示目标字符串的分割线
    if (s[i - 1] + 1 != s[i])
      continue;

    int j = i - 1; // 往前找与 s[i-1] 相同的连续字符最靠前的位置
    while (j - 1 >= 0 && s[j - 1] == s[i - 1])
      j--;

    int k = i; // 往后找与 s[i] 相同的连续字符最靠后的位置
    while (k + 1 < n && s[k + 1] == s[i])
      k++;

    // 前半段字符有 (i-1) - j + 1 个，后半段字符有 k - i + 1 个
    ans += min(i - j, k - i + 1);
  }
  cout << ans;

  return 0;
}